Skip to content

Conversation

@nattsw
Copy link
Contributor

@nattsw nattsw commented Apr 30, 2025

This PR adds two jobs that fill in post.locale and adds PostLocalization for each defined locale in SiteSetting.automatic_translation_target_languages.

It also creates dedicated DiscourseTranslator::PostTranslator and DiscourseTranslator::PostLocaleDetector to serve this purpose. We should be moving away from dealing with translatables in the near future.

Needs the following to be merged:

Will require a compat file update after the above is merged.

Base automatically changed from rename-setting to main April 30, 2025 08:35
@nattsw nattsw force-pushed the post-translation branch from 5597c91 to e3fe877 Compare April 30, 2025 08:45
@nattsw nattsw requested a review from Copilot April 30, 2025 11:05

This comment was marked as outdated.

@nattsw nattsw requested a review from Copilot April 30, 2025 12:18
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR introduces new functionality to automatically detect a post’s locale and generate translations via dedicated jobs and services. Key changes include:

  • Adding jobs to translate posts and detect posts' locales.
  • Implementing new translator and locale detector services using updated provider methods.
  • Enhancing the provider API with separate methods for handling Post and Topic translation.

Reviewed Changes

Copilot reviewed 10 out of 11 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
spec/services/post_translator_spec.rb Tests for post translation functionality
spec/services/post_locale_detector_spec.rb Tests for post locale detection functionality
spec/jobs/translate_posts_spec.rb Tests and implementation for translating posts job
spec/jobs/detect_posts_locale_spec.rb Tests for detecting posts' locale job
app/services/discourse_translator/provider/discourse_ai.rb Adds specific methods for translating posts and topics
app/services/discourse_translator/provider/base_provider.rb Introduces wrapper methods for post and topic translation
app/services/discourse_translator/post_translator.rb Implements post translation logic
app/services/discourse_translator/post_locale_detector.rb Implements post locale detection logic
app/jobs/regular/translate_posts.rb Implements the post translation job
app/jobs/regular/detect_posts_locale.rb Implements the job to detect post locales
Files not reviewed (1)
  • .discourse-compatibility: Language not supported

@nattsw nattsw force-pushed the post-translation branch from 51cf6a2 to 333e3b5 Compare April 30, 2025 12:19
@discourse discourse deleted a comment from Copilot AI May 6, 2025
@discourse discourse deleted a comment from Copilot AI May 6, 2025
@discourse discourse deleted a comment from Copilot AI May 6, 2025
@nattsw nattsw merged commit 39fc55f into main May 6, 2025
6 checks passed
@nattsw nattsw deleted the post-translation branch May 6, 2025 08:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants